import axios from 'axios'
import { getToken } from '../auth'
import router from '../../router'
import { ElMessage } from 'element-plus'

const TokenPre = '' // token前缀  Bearer

// 创建一个 axios 实例
const http = axios.create({
  baseURL: "/api", // 所有的请求地址前缀部分,import.meta.env.VITE_PROXY_DOMAIN
  timeout: 60000, // 请求超时时间毫秒
  withCredentials: true, // 异步请求携带cookie
  headers: {
    // 设置后端需要的传参类型
    'Content-Type': 'application/json;charset=UTF-8',
    crossDomain: true, // 允许跨域
    token: 'your token',
    'X-Requested-With': 'XMLHttpRequest'
  }
})

// 添加请求拦截器
http.interceptors.request.use(config => {
    return config
  // if (config.url === 'login') {
  //   return config
  // }
  // const token = getToken()
  // if (token == null) {
  //   router.push({ path: '/' })
  //   // router.push('login')
  //   return config
  // } else {
  //   if (config && config?.headers) {
  //     config.headers.Authorization = TokenPre + token
  //   }
  //   return config
  // }
}, (error) => Promise.reject(error)
)

// 添加响应拦截器
http.interceptors.response.use(response => {
  return response.data
}, (error) => {
  console.log(error.response)
  ElMessage.error(error.response)
  return Promise.reject(error)
}
)

export default http
